package com.victualler.product.customer.dto.request;

import com.victualler.core.common.annotation.ListPageQuery;
import com.victualler.core.common.annotation.SimpleQueryFrom;
import com.victualler.core.common.annotation.SimpleQueryOrderBy;
import com.victualler.core.common.annotation.SimpleQueryWhere;
import com.victualler.core.common.enums.ColumnFormatEnum;
import com.victualler.core.common.enums.LinkType;

import java.io.Serializable;

/**
 * @author Guoshichang
 * @since 14:53 on 2018/10/3.
 */
@SimpleQueryFrom(value = "customer CustomerDao")
@SimpleQueryOrderBy(value = " Order by CustomerDao.create_date desc")
public class CustomerReqeustDto implements Serializable {



    //客户编号
    @SimpleQueryWhere(specialName = "CustomerDao.customer_no",linkType = LinkType.LIKE)
    @ListPageQuery(title = "客户编号")
    private String customerNo;

    //客户名称
    @SimpleQueryWhere(specialName = "CustomerDao.name",linkType = LinkType.LIKE)
    @ListPageQuery(title = "客户名称")
    private String name;

    //客户类型
    @SimpleQueryWhere(specialName = "CustomerDao.type")
    @ListPageQuery(title = "客户类型",type = ColumnFormatEnum.DICT,dictCodeType = "CustomerType")
    private String type;

    //客户等级
    @SimpleQueryWhere(specialName = "CustomerDao.level")
    @ListPageQuery(title = "客户等级",type = ColumnFormatEnum.DICT,dictCodeType = "CustomerLevel")
    private String level;

    //营业类型
    @SimpleQueryWhere(specialName = "CustomerDao.business_type")
    @ListPageQuery(title = "营业类型",type = ColumnFormatEnum.DICT,dictCodeType = "BusinessType")
    private String businessType;

    //归属地
    @SimpleQueryWhere(specialName = "CustomerDao.ascription",linkType = LinkType.LIKE)
    @ListPageQuery(title = "归属地")
    private String ascription;

    //类型
    @SimpleQueryWhere(specialName = "CustomerDao.state")
    @ListPageQuery(title = "状态",type = ColumnFormatEnum.DICT,dictCodeType = "EntityState")
    private String state;




    public String getCustomerNo() {
        return customerNo;
    }

    public void setCustomerNo(String customerNo) {
        this.customerNo = customerNo;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getType() {
        return type;
    }

    public void setType(String type) {
        this.type = type;
    }

    public String getLevel() {
        return level;
    }

    public void setLevel(String level) {
        this.level = level;
    }

    public String getBusinessType() {
        return businessType;
    }

    public void setBusinessType(String businessType) {
        this.businessType = businessType;
    }

    public String getAscription() {
        return ascription;
    }

    public void setAscription(String ascription) {
        this.ascription = ascription;
    }

    public String getState() {
        return state;
    }

    public void setState(String state) {
        this.state = state;
    }
}
